// This maps gist file language to monaco editor equivalent
export const languageMap: Record<string, string> = {
  "1C Enterprise": "bsl",
  ABAP: 'abap',
  ActionScript: 'actionscript',
  Ada: 'ada',
  Agda: 'text',
  'AGS Script': 'cpp',
  Alloy: 'text',
  'Ant Build System': 'xml',
  ANTLR: 'text',
  ApacheConf: 'apache_conf',
  Apex: 'apex',
  APL: 'text',
  AppleScript: 'applescript',
  Arc: 'text',
  Arduino: 'cpp',
  AsciiDoc: 'asciidoc',
  ASP: 'text',
  AspectJ: 'text',
  Assembly: 'assembly_x86',
  ATS: 'ocaml',
  Augeas: 'text',
  AutoHotkey: 'autohotkey',
  AutoIt: 'autohotkey',
  Awk: 'text',
  Batchfile: 'bat',
  Befunge: 'text',
  Bison: 'text',
  BitBake: 'text',
  BlitzBasic: 'text',
  BlitzMax: 'text',
  Bluespec: 'verilog',
  Boo: 'text',
  Brainfuck: 'text',
  Brightscript: 'text',
  Bro: 'text',
  C: 'cpp',
  'C#': 'csharp',
  'C++': 'cpp',
  'C-ObjDump': 'assembly_x86',
  'C2hs Haskell': 'haskell',
  "Cap'n Proto": 'text',
  CartoCSS: 'text',
  Ceylon: 'text',
  Chapel: 'text',
  ChucK: 'java',
  Cirru: 'cirru',
  Clean: 'text',
  CLIPS: 'text',
  Clojure: 'clojure',
  CMake: 'text',
  COBOL: 'cobol',
  CoffeeScript: 'coffee',
  ColdFusion: 'coldfusion',
  'ColdFusion CFC': 'coldfusion',
  'Common Lisp': 'lisp',
  'Component Pascal': 'pascal',
  Cool: 'text',
  Coq: 'text',
  'Cpp-ObjDump': 'assembly_x86',
  Creole: 'text',
  Crystal: 'ruby',
  CSS: 'css',
  Cucumber: 'text',
  Cuda: 'cpp',
  Cycript: 'javascript',
  Cython: 'text',
  D: 'd',
  'D-ObjDump': 'assembly_x86',
  'Darcs Patch': 'text',
  Dart: 'dart',
  Diff: 'diff',
  DM: 'cpp',
  Dockerfile: 'dockerfile',
  Dogescript: 'text',
  Dylan: 'text',
  E: 'text',
  Eagle: 'xml',
  eC: 'text',
  'Ecere Projects': 'json',
  ECL: 'text',
  edn: 'clojure',
  Eiffel: 'eiffel',
  Elixir: 'elixir',
  Elm: 'elm',
  'Emacs Lisp': 'lisp',
  EmberScript: 'coffee',
  Erlang: 'erlang',
  'F#': 'fsharp',
  Factor: 'text',
  Fancy: 'text',
  Fantom: 'text',
  fish: 'text',
  FLUX: 'text',
  Forth: 'forth',
  FORTRAN: 'text',
  Frege: 'haskell',
  'G-code': 'gcode',
  'Game Maker Language': 'cpp',
  GAMS: 'text',
  GAP: 'text',
  GAS: 'assembly_x86',
  GDScript: 'text',
  Genshi: 'xml',
  'Gentoo Ebuild': 'shell',
  'Gentoo Eclass': 'shell',
  'Gettext Catalog': 'text',
  GLSL: 'glsl',
  Glyph: 'tcl',
  Gnuplot: 'text',
  Go: 'go',
  Golo: 'text',
  Gosu: 'text',
  Grace: 'text',
  Gradle: 'text',
  'Grammatical Framework': 'haskell',
  'Graph Modeling Language': 'text',
  'Graphviz (DOT)': 'text',
  Groff: 'text',
  Groovy: 'groovy',
  'Groovy Server Pages': 'jsp',
  Hack: 'php',
  Haml: 'haml',
  Handlebars: 'handlebars',
  Harbour: 'text',
  Haskell: 'haskell',
  Haxe: 'haxe',
  HTML: 'html',
  'HTML+Django': 'django',
  'HTML+ERB': 'html_ruby',
  'HTML+PHP': 'php',
  'HTML+Razor': 'razor',
  HTTP: 'text',
  Hy: 'clojure',
  icls: 'xml',
  IDL: 'text',
  Idris: 'text',
  'IGOR Pro': 'text',
  'Inform 7': 'text',
  INI: 'ini',
  'Inno Setup': 'text',
  Io: 'io',
  Ioke: 'text',
  'IRC log': 'text',
  Isabelle: 'text',
  J: 'text',
  Jade: 'jade',
  Jasmin: 'java',
  Java: 'java',
  'Java Server Pages': 'java',
  JavaScript: 'javascript',
  JSX: 'javascript',
  TSX: 'javascript',
  JSON: 'json',
  JSON5: 'javascript',
  JSONiq: 'jsoniq',
  JSONLD: 'javascript',
  Julia: 'julia',
  Kit: 'html',
  Kotlin: 'text',
  KRL: 'text',
  LabVIEW: 'text',
  Lasso: 'text',
  Latte: 'smarty',
  Less: 'less',
  LFE: 'lisp',
  LilyPond: 'text',
  Liquid: 'liquid',
  'Literate Agda': 'text',
  'Literate CoffeeScript': 'text',
  'Literate Haskell': 'text',
  LiveScript: 'livescript',
  LLVM: 'text',
  Logos: 'text',
  Logtalk: 'text',
  LOLCODE: 'text',
  LookML: 'yaml',
  LoomScript: 'text',
  LSL: 'lsl',
  Lua: 'lua',
  M: 'lisp',
  Makefile: 'makefile',
  Mako: 'text',
  Markdown: 'markdown',
  Mask: 'mask',
  Mathematica: 'text',
  Matlab: 'matlab',
  'Maven POM': 'xml',
  Max: 'json',
  MediaWiki: 'text',
  Mercury: 'prolog',
  MiniD: 'text',
  Mirah: 'ruby',
  Monkey: 'text',
  Moocode: 'text',
  MoonScript: 'text',
  MTML: 'html',
  mupad: 'text',
  Myghty: 'text',
  Nemerle: 'text',
  nesC: 'text',
  NetLogo: 'lisp',
  Nginx: 'text',
  Nimrod: 'text',
  Ninja: 'text',
  Nit: 'text',
  Nix: 'nix',
  NSIS: 'text',
  Nu: 'scheme',
  NumPy: 'text',
  ObjDump: 'assembly_x86',
  'Objective-C': 'objectivec',
  'Objective-C++': 'objectivec',
  'Objective-J': 'text',
  OCaml: 'ocaml',
  Omgrofl: 'text',
  ooc: 'text',
  Opa: 'text',
  Opal: 'text',
  OpenCL: 'cpp',
  'OpenEdge ABL': 'text',
  OpenSCAD: 'text',
  Org: 'text',
  Ox: 'text',
  Oxygene: 'text',
  Oz: 'text',
  Pan: 'text',
  Papyrus: 'text',
  Parrot: 'text',
  'Parrot Assembly': 'text',
  'Parrot Internal Representation': 'text',
  Pascal: 'pascal',
  PAWN: 'cpp',
  Perl: 'perl',
  Perl6: 'perl',
  PHP: 'php',
  PigLatin: 'text',
  Pike: 'text',
  Pod: 'perl',
  PogoScript: 'text',
  PostScript: 'text',
  PowerShell: 'powershell',
  Processing: 'text',
  Prolog: 'prolog',
  'Propeller Spin': 'text',
  'Protocol Buffer': 'protobuf',
  Pug: 'pug',
  'Public Key': 'text',
  Puppet: 'text',
  'Pure Data': 'text',
  PureBasic: 'text',
  PureScript: 'haskell',
  Python: 'python',
  'Python traceback': 'text',
  QMake: 'text',
  QML: 'text',
  R: 'r',
  Racket: 'lisp',
  'Ragel in Ruby Host': 'text',
  RAML: 'yaml',
  'Raw token data': 'text',
  RDoc: 'rdoc',
  REALbasic: 'text',
  Rebol: 'text',
  Red: 'text',
  Redcode: 'text',
  reStructuredText: 'text',
  RHTML: 'rhtml',
  RMarkdown: 'markdown',
  RobotFramework: 'text',
  Rouge: 'clojure',
  Ruby: 'ruby',
  Rust: 'rust',
  Sage: 'python',
  SaltStack: 'yaml',
  SAS: 'text',
  Sass: 'sass',
  Scala: 'scala',
  Scaml: 'text',
  Scheme: 'scheme',
  Scilab: 'text',
  SCSS: 'scss',
  Self: 'text',
  Shell: 'shell',
  ShellSession: 'shell',
  Shen: 'text',
  Slash: 'text',
  Slim: 'text',
  Smalltalk: 'text',
  Smarty: 'smarty',
  SourcePawn: 'text',
  SQF: 'text',
  SQL: 'sql',
  PLSQL: 'sql',
  PLpgSQL: 'pgsql',
  Squirrel: 'cpp',
  'Standard ML': 'text',
  Stata: 'text',
  STON: 'lisp',
  Stylus: 'stylus',
  SuperCollider: 'text',
  Swift: 'swift',
  SystemVerilog: 'verilog',
  Tcl: 'tcl',
  Tcsh: 'shell',
  Tea: 'text',
  TeX: 'tex',
  Text: 'text',
  Textile: 'textile',
  Thrift: 'text',
  TOML: 'toml',
  Turing: 'text',
  Twig: 'twig',
  TXL: 'text',
  TypeScript: 'typescript',
  'Unified Parallel C': 'cpp',
  UnrealScript: 'java',
  Vala: 'vala',
  VCL: 'perl',
  Verilog: 'verilog',
  VHDL: 'vhdl',
  VimL: 'text',
  'Visual Basic': 'text',
  Volt: 'd',
  WebIDL: 'text',
  wisp: 'clojure',
  xBase: 'text',
  XC: 'cpp',
  XML: 'xml',
  'XML Property List': 'xml',
  Xojo: 'text',
  XProc: 'xml',
  XQuery: 'xquery',
  XS: 'cpp',
  XSLT: 'xml',
  Xtend: 'text',
  YAML: 'yaml',
  Zephir: 'php',
  Zimpl: 'text',
};

export const languageMimeMap: Record<string, string> = {
  'text/x-abap': 'abap',
  'application/x-actionscript': 'actionscript',
  'text/x-ada': 'ada',
  'text/x-agda': 'text',
  'text/x-ags-script': 'cpp',
  'text/x-alloy': 'text',
  'application/xml': 'xml',
  'text/x-antlr': 'text',
  'text/x-apacheconf': 'apache_conf',
  'application/x-apex': 'apex',
  'text/x-apl': 'text',
  'text/x-applescript': 'applescript',
  'text/x-arc': 'text',
  'text/x-arduino': 'cpp',
  'text/x-asciidoc': 'asciidoc',
  'application/x-asp': 'text',
  'text/x-aspectj': 'text',
  'application/x-assembly': 'assembly_x86',
  'text/x-ats': 'ocaml',
  'text/x-augeas': 'text',
  'application/x-autohotkey': 'autohotkey',
  'application/x-autoit': 'autohotkey',
  'text/x-awk': 'text',
  'application/x-batchfile': 'bat',
  'text/x-befunge': 'text',
  'text/x-bison': 'text',
  'text/x-bitbake': 'text',
  'text/x-blitzbasic': 'text',
  'text/x-blitzmax': 'text',
  'text/x-bluespec': 'verilog',
  'text/x-boo': 'text',
  'text/x-brainfuck': 'text',
  'text/x-brightscript': 'text',
  'text/x-bro': 'text',
  'text/x-c': 'cpp',
  'application/x-csharp': 'csharp',
  'application/x-cplusplus': 'cpp',
  'application/x-c-objdump': 'assembly_x86',
  'text/x-c2hs-haskell': 'haskell',
  'application/x-capnproto': 'text',
  'text/x-cartocss': 'text',
  'text/x-ceylon': 'text',
  'text/x-chapel': 'text',
  'text/x-chuck': 'java',
  'application/x-cirru': 'cirru',
  'text/x-clean': 'text',
  'application/x-clips': 'text',
  'application/x-clojure': 'clojure',
  'text/x-cmake': 'text',
  'application/x-cobol': 'cobol',
  'text/x-coffeescript': 'coffee',
  'application/x-coldfusion': 'coldfusion',
  'application/x-coldfusion-cfc': 'coldfusion',
  'application/x-common-lisp': 'lisp',
  'application/x-component-pascal': 'pascal',
  'text/x-cool': 'text',
  'text/x-coq': 'text',
  'application/x-cpp-objdump': 'assembly_x86',
  'text/x-creole': 'text',
  'text/x-crystal': 'ruby',
  'text/css': 'CSS',
  'text/x-cucumber': 'text',
  'text/x-cuda': 'cpp',
  'text/x-cycript': 'javascript',
  'text/x-cython': 'text',
  'text/x-d': 'd',
  'application/x-d-objdump': 'assembly_x86',
  'text/x-darcs-patch': 'text',
  'application/dart': 'dart',
  'text/x-diff': 'diff',
  'text/x-dm': 'cpp',
  'text/x-dockerfile': 'dockerfile',
  'text/x-dogescript': 'text',
  'text/x-dylan': 'text',
  'text/x-e': 'text',
  'text/x-ec': 'text',
  'application/x-ecere-projects': 'json',
  'text/x-ecl': 'text',
  'application/edn': 'clojure',
  'application/x-eiffel': 'eiffel',
  'application/x-elixir': 'elixir',
  'application/elm': 'elm',
  'application/x-emacs-lisp': 'lisp',
  'text/x-ember-script': 'coffee',
  'application/x-erlang': 'erlang',
  'application/x-fsharp': 'fsharp',
  'text/x-factor': 'text',
  'text/x-fancy': 'text',
  'text/x-fantom': 'text',
  'application/x-fish': 'text',
  'text/x-flux': 'text',
  'text/x-forth': 'forth',
  'application/x-fortran': 'text',
  'text/x-frege': 'haskell',
  'text/x-gcode': 'gcode',
  'application/x-game-maker-language': 'cpp',
  'text/x-gams': 'text',
  'text/x-gap': 'text',
  'application/x-gas': 'assembly_x86',
  'text/x-gdscript': 'text',
  'text/x-genshi': 'xml',
  'text/x-gentoo-ebuild': 'shell',
  'text/x-gentoo-eclass': 'shell',
  'text/x-gettext-catalog': 'text',
  'text/x-glsl': 'glsl',
  'text/x-glyph': 'tcl',
  'text/x-gnuplot': 'text',
  'application/x-go': 'go',
  'text/x-golo': 'text',
  'text/x-gosu': 'text',
  'text/x-grace': 'text',
  'text/x-gradle': 'text',
  'text/x-grammatical-framework': 'haskell',
  'text/x-graph-modeling-language': 'text',
  'text/x-graphviz-dot': 'text',
  'application/x-groff': 'text',
  'application/x-groovy': 'groovy',
  'text/x-groovy-server-pages': 'jsp',
  'application/x-hack': 'php',
  'text/x-haml': 'haml',
  'text/x-handlebars': 'handlebars',
  'application/x-harbour': 'text',
  'text/x-haskell': 'haskell',
  'application/x-haxe': 'haxe',
  'text/html': 'html',
  'application/x-html-django': 'django',
  'application/x-html-erb': 'html_ruby',
  'application/x-html-php': 'php',
  'application/x-html-razor': 'razor',
  'text/x-http': 'text',
  'text/x-hy': 'clojure',
  'text/x-icls': 'xml',
  'application/x-idl': 'text',
  'text/x-idris': 'text',
  'text/x-igor-pro': 'text',
  'text/x-inform-7': 'text',
  'text/x-ini': 'ini',
  'text/x-inno-setup': 'text',
  'text/x-io': 'io',
  'text/x-ioke': 'text',
  'text/x-irc-log': 'text',
  'text/x-isabelle': 'text',
  'text/x-j': 'text',
  'text/x-jade': 'jade',
  'application/x-jasmin': 'java',
  'application/x-java': 'java',
  'application/x-java-server-pages': 'java',
  'application/javascript': 'javascript',
  'application/typescript': 'typescript',
  'application/json': 'json',
  'application/json5': 'javascript',
  'application/jsoniq': 'jsoniq',
  'application/jsonld': 'javascript',
  'application/julia': 'julia',
  'application/kotlin': 'text',
  'text/x-krl': 'text',
  'text/x-labview': 'text',
  'text/x-lasso': 'text',
  'text/x-latte': 'smarty',
  'text/x-less': 'less',
  'application/x-lfe': 'lisp',
  'text/x-lilypond': 'text',
  'text/x-liquid': 'liquid',
  'text/x-literate-agda': 'text',
  'text/x-literate-coffeescript': 'text',
  'text/x-literate-haskell': 'text',
  'application/x-livescript': 'livescript',
  'application/x-llvm': 'text',
  'text/x-logos': 'text',
  'text/x-logtalk': 'text',
  'text/x-lolcode': 'text',
  'text/x-lookml': 'yaml',
  'text/x-loomscript': 'text',
  'text/x-lsl': 'lsl',
  'application/x-lua': 'lua',
  'text/x-m': 'lisp',
  'application/x-makefile': 'makefile',
  'text/x-mako': 'text',
  'text/markdown': 'markdown',
  'text/x-mask': 'mask',
  'application/x-mathematica': 'text',
  'application/x-matlab': 'matlab',
  'application/x-maven-pom': 'xml',
  'application/x-mediawiki': 'text',
  'application/x-mercury': 'prolog',
  'text/x-minid': 'text',
  'text/x-mirah': 'ruby',
  'text/x-monkey': 'text',
  'text/x-moocode': 'text',
  'text/x-moonscript': 'text',
  'application/x-mtml': 'html',
  'text/x-mupad': 'text',
  'text/x-myghty': 'text',
  'text/x-nemerle': 'text',
  'text/x-nesc': 'text',
  'application/x-netlogo': 'lisp',
  'text/x-nginx': 'text',
  'text/x-nimrod': 'text',
  'text/x-ninja': 'text',
  'text/x-nit': 'text',
  'application/x-nix': 'nix',
  'text/x-nsis': 'text',
  'text/x-nu': 'scheme',
  'application/x-numpy': 'text',
  'application/x-objdump': 'assembly_x86',
  'text/x-objective-c': 'objectivec',
  'application/x-objective-c++': 'objectivec',
  'text/x-objective-j': 'text',
  'text/x-ocaml': 'ocaml',
  'text/x-omgrofl': 'text',
  'text/x-ooc': 'text',
  'text/x-opa': 'text',
  'text/x-opal': 'text',
  'text/x-opencl': 'cpp',
  'text/x-openedge-abl': 'text',
  'text/x-openscad': 'text',
  'text/x-org': 'text',
  'text/x-ox': 'text',
  'text/x-oxygene': 'text',
  'text/x-oz': 'text',
  'text/x-pan': 'text',
  'text/x-papyrus': 'text',
  'text/x-parrot': 'text',
  'text/x-parrot-assembly': 'text',
  'text/x-parrot-internal-representation': 'text',
  'application/x-pascal': 'pascal',
  'text/x-pawn': 'cpp',
  'application/x-perl': 'perl',
  'text/x-perl6': 'perl',
  'application/x-php': 'php',
  'text/x-piglatin': 'text',
  'text/x-pike': 'text',
  'application/x-pod': 'perl',
  'text/x-pogoscript': 'text',
  'application/x-postscript': 'text',
  'application/x-powershell': 'powershell',
  'application/x-processing': 'text',
  'text/x-prolog': 'prolog',
  'text/x-propeller-spin': 'text',
  'application/x-protocol-buffer': 'protobuf',
  'text/x-pug': 'pug',
  'text/x-public-key': 'text',
  'text/x-puppet': 'text',
  'text/x-pure-data': 'text',
  'text/x-purebasic': 'text',
  'text/x-purescript': 'haskell',
  'application/x-python': 'python',
  'text/x-python-traceback': 'text',
  'text/x-qmake': 'text',
  'application/x-qml': 'text',
  'text/x-r': 'r',
  'application/x-racket': 'lisp',
  'text/x-ragel-in-ruby-host': 'text',
  'application/x-raml': 'yaml',
  'text/x-raw-token-data': 'text',
  'text/x-rdoc': 'rdoc',
  'text/x-realbasic': 'text',
  'text/x-rebol': 'text',
  'text/x-red': 'text',
  'text/x-redcode': 'text',
  'text/x-restructuredtext': 'text',
  'application/x-rhtml': 'rhtml',
  'application/x-rmarkdown': 'markdown',
  'text/x-robotframework': 'text',
  'text/x-rouge': 'clojure',
  'text/x-ruby': 'ruby',
  'text/x-rust': 'rust',
  'application/x-sage': 'python',
  'text/x-saltstack': 'yaml',
  'application/x-sas': 'text',
  'application/x-sass': 'sass',
  'application/x-scala': 'scala',
  'text/x-scaml': 'text',
  'application/x-scheme': 'scheme',
  'application/x-scilab': 'text',
  'text/x-scss': 'scss',
  'text/x-self': 'text',
  'application/x-shell': 'shell',
  'text/x-shellsession': 'shell',
  'text/x-shen': 'text',
  'text/x-slash': 'text',
  'application/x-slim': 'text',
  'text/x-smalltalk': 'text',
  'text/x-smarty': 'smarty',
  'text/x-sourcepawn': 'text',
  'text/x-sqf': 'text',
  'application/x-sql': 'sql',
  'application/x-plsql': 'sql',
  'application/x-plpgsql': 'pgsql',
  'application/x-squirrel': 'cpp',
  'text/x-standard-ml': 'text',
  'text/x-stata': 'text',
  'text/x-ston': 'lisp',
  'text/x-stylus': 'stylus',
  'application/x-supercollider': 'text',
  'text/x-swift': 'swift',
  'text/x-systemverilog': 'verilog',
  'application/x-tcl': 'tcl',
  'application/x-tcsh': 'shell',
  'text/x-tea': 'text',
  'application/x-tex': 'tex',
  'text/x-textile': 'textile',
  'application/x-thrift': 'text',
  'text/x-toml': 'toml',
  'application/x-turing': 'text',
  'application/x-twig': 'twig',
  'text/x-txl': 'text',
  'text/x-typescript': 'typescript',
  'application/x-unified-parallel-c': 'cpp',
  'application/x-unrealscript': 'java',
  'application/x-vala': 'vala',
  'application/x-vcl': 'perl',
  'text/x-verilog': 'verilog',
  'application/x-vhdl': 'vhdl',
  'text/x-viml': 'text',
  'application/x-visual-basic': 'text',
  'text/x-volt': 'd',
  'application/x-wisp': 'clojure',
  'application/x-xbase': 'text',
  'application/x-xc': 'cpp',
  'text/x-xojo': 'text',
  'application/x-zig': 'zig',
  'image/svg+xml': 'XML',
  'application/x-yaml': 'yaml',
};
